{
 "cells": [
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Comparing with Experimental Data\n",
    "\n",
    "In this notebook we show how to compare results generated in PyBaMM with experimental data. We compare the results of the DFN model (see the [DFN notebook](DFN.ipynb)) with the experimental data from Ecker et. al. [[5]](#References). Results are compared for a constant current discharge at 1C and at 5C."
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "First we import pybamm and any other packages required by this example, and then change our working directory to the root of the pybamm folder."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Note: you may need to restart the kernel to use updated packages.\n"
     ]
    }
   ],
   "source": [
    "%pip install \"pybamm[plot,cite]\" -q    # install PyBaMM if it is not installed\n",
    "import os\n",
    "\n",
    "import matplotlib.pyplot as plt\n",
    "import pandas as pd\n",
    "\n",
    "import pybamm\n",
    "\n",
    "os.chdir(pybamm.__path__[0] + \"/..\")"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We then load the Ecker data in from the `.csv` files using `pandas`"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "data_loader = pybamm.DataLoader()\n",
    "\n",
    "voltage_data_1C = pd.read_csv(\n",
    "    f\"{data_loader.get_data('Ecker_1C.csv')}\", header=None\n",
    ").to_numpy()\n",
    "voltage_data_5C = pd.read_csv(\n",
    "    f\"{data_loader.get_data('Ecker_5C.csv')}\", header=None\n",
    ").to_numpy()"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Note that the data is Time [s] vs Voltage [V]."
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We load the DFN model and select the parameter set from the Ecker paper [1]. We update the C-rate an `InputParameter` so that we can re-run the same model at different C-rates without the need to rebuild the model. This is done by passing the flag `[input]`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [],
   "source": [
    "# choose DFN\n",
    "model = pybamm.lithium_ion.DFN()\n",
    "\n",
    "# pick parameters, keeping C-rate as an input to be changed for each solve\n",
    "parameter_values = pybamm.ParameterValues(\"Ecker2015\")\n",
    "parameter_values.update({\"Current function [A]\": \"[input]\"})"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "For this comparison we choose a fine mesh of 1 finite volume per micron in the electrodes and separator and 1 finite volume per 0.1 micron in the particles"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "var = pybamm.standard_spatial_vars\n",
    "var_pts = {\n",
    "    var.x_n: int(parameter_values.evaluate(model.param.n.L / 1e-6)),\n",
    "    var.x_s: int(parameter_values.evaluate(model.param.s.L / 1e-6)),\n",
    "    var.x_p: int(parameter_values.evaluate(model.param.p.L / 1e-6)),\n",
    "    var.r_n: int(parameter_values.evaluate(model.param.n.prim.R_typ / 1e-7)),\n",
    "    var.r_p: int(parameter_values.evaluate(model.param.p.prim.R_typ / 1e-7)),\n",
    "}"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We create a simulation using our model, parameters and number of grid points"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "sim = pybamm.Simulation(model, parameter_values=parameter_values, var_pts=var_pts)"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We can then solve the model for a 1C and 5C discharge "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [],
   "source": [
    "C_rates = [1, 5]  # C-rates to solve for\n",
    "capacity = parameter_values[\"Nominal cell capacity [A.h]\"]\n",
    "t_evals = [\n",
    "    [0, 3800],\n",
    "    [0, 720],\n",
    "]  # times to return the solution at\n",
    "solutions = [None] * len(C_rates)  # empty list that will hold solutions\n",
    "\n",
    "# loop over C-rates\n",
    "for i, C_rate in enumerate(C_rates):\n",
    "    current = C_rate * capacity\n",
    "    sim.solve(\n",
    "        t_eval=t_evals[i],\n",
    "        inputs={\"Current function [A]\": current},\n",
    "    )\n",
    "    solutions[i] = sim.solution"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Finally we plot the numerical solution against the experimental data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABQkAAAGGCAYAAADYVwfrAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8fJSN1AAAACXBIWXMAAA9hAAAPYQGoP6dpAACl00lEQVR4nOzdd3iUVfr/8ffMpFcSQnoIHQwQekkERQQFFHQVG66xsOvawfZDXLurwCqKrrt87eAqIqAgugoqGkXpPRCKQCCQCoR0ksDM/P4YiIQkZBImmZTP67rmivPMeZ45M3qZO/dzzn0brFarFREREREREREREWmxjM6egIiIiIiIiIiIiDiXkoQiIiIiIiIiIiItnJKEIiIiIiIiIiIiLZyShCIiIiIiIiIiIi2ckoQiIiIiIiIiIiItnJKEIiIiIiIiIiIiLZyShCIiIiIiIiIiIi2ckoQiIiIiIiIiIiItnJKEIiIiIiIiIiIiLZyShCIiIiIiIiIiIi2ckoQiIg5SWFjIs88+y6hRowgMDMRgMDBnzpxqxy9evJjRo0cTFBSEm5sb4eHh3Hjjjfz4448NN2kRERERuWCJiYkYDIYqH2vWrKkw1mw28+GHHzJs2DACAwNxd3enXbt23HnnnWzYsMFJn0BEBFycPQERkebi6NGjvPDCC7Rt25ZevXqRmJhY5Tir1cpdd93FnDlz6NOnD4888gihoaFkZGSwePFiLr/8cn777Tfi4+Mb9gOIiIiIyAV56KGHGDBgQIVjnTp1Kv/nEydOcN1117Fs2TIuueQSnnzySQIDAzlw4AALFixg7ty5pKamEhkZ2dBTFxFRklBExFHCwsLIyMggNDSUDRs2VAoQz5g5cyZz5sxh8uTJvPbaaxgMhvLX/v73v/Pf//4XFxf971lERESkqRk6dCjjx4+v9vXHH3+cZcuW8frrrzN58uQKrz377LO8/vrr9TxDEZHq6a9QEREHcXd3JzQ09LxjTpw4wbRp0+jWrRuvvvpqhQThGbfddlt9TVFERERE6llBQQGenp6VbvoePnyYt99+m5EjR1ZKEAKYTCYee+yxBpqliEhlqkkoItKAfv31V3JycpgwYQImk8nZ0xERERERB7rzzjvx8/PDw8ODyy67rEKNwW+//ZZTp07phrCINFpaSSgi0oB27twJQM+ePZ08ExERERFxFDc3N66//nrGjBlDUFAQycnJvPrqqwwdOpRVq1bRp08fxYEi0ugpSSgi0oDy8/MB8PX1dfJMRERERMRR4uPjKzSdGzduHOPHjyc2NpapU6eybNkyxYEi0uhpu7GISAPy8/MDbLVqRERERKT56tSpE9dccw0//fQTZrNZcaCINHpKEoqINKBu3boBkJSU5OSZiIiIiEh9i4qKoqysjKKiIsWBItLoKUkoItKAhgwZQkBAAJ9++ilms9nZ0xERERGRerR//348PDzw8fFh9OjRmEwmPv74Y2dPS0SkSkoSiog0IC8vL6ZMmcLOnTuZMmUKVqu10piPP/6YdevWOWF2IiIiIlIXR44cqXRs69atLF26lCuuuAKj0UhUVBR//etf+e677/jXv/5VabzFYmHmzJkcPny4IaYsIlKJwVrVX6giIlInb731Frm5uaSnpzN79myuu+46+vTpA8CDDz6Iv78/FouFO+64g//+97/07duX8ePHExoaSmZmJkuWLGHdunWsWrWKuLg4J38aEREREbHH8OHD8fT0JD4+nuDgYJKTk3nnnXdwdXVl9erVXHTRRQAUFxdz7bXX8v333zNs2DCuvvpqAgICSE1NZeHChezatYvU1FQiIiKc/IlEpCVSklBExIHatWvHwYMHq3wtJSWFdu3alT///PPPeeedd9iwYQP5+fm0adOGSy65hHvvvZdLL720gWYsIiIiIhfqzTff5JNPPmHv3r3lcd3ll1/Os88+S6dOnSqMNZvNzJkzh7lz57Jt2zaKi4sJDw9n+PDhPPTQQ/Tu3ds5H0JEWjwlCUVERERERERERFo41SQUERERERERERFp4ZQkFBERERERERERaeGUJBQREREREREREWnhlCQUERERERERERFp4ZQkFBERERERERERaeGUJBQREREREREREWnhXJw9gYZmsVhIT0/H19cXg8Hg7OmIiIiINAir1UpBQQHh4eEYjS33PrFiQREREWlp7I0DW1ySMD09naioKGdPQ0RERMQpDh06RGRkpLOn4TSKBUVERKSlqikObHFJQl9fX8D2xfj5+Tl5NiIiIiINIz8/n6ioqPJYqKVSLCgiIiItjb1xYItLEp7ZVuLn56fAUERERFqclr7FVrGgiIiItFQ1xYEttyCNiIiIiIiIiIiIAEoSioiIiIiIiIiItHhKEoqIiIiIiIiIiLRwLa4m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K1euLB/7z3/+k+Dg4PKdBcOGDeOBBx7ggQcewN/fn6CgIJ5++mms1j+SMKWlpTz22GNERETg7e3NoEGDSExMLH99zpw5tGrViqVLlxITE4O7uzupqamVtpgMGzaMBx98kMmTJxMQEEBISAjvvvsuRUVF3Hnnnfj6+tKpUye+/fbbCp9v+/btjB49Gh8fH0JCQrjttts4evRohes+9NBD/L//9/8IDAwkNDSU5557rvz1du3aAfCnP/0Jg8FQ/lyamGpKweAXbjseM47WPu7M++tghnYO4sRJM3fOWc+9H29k3xFtPxYRkXrk5B4EigUbTyzo9O7G55OamkpGRkb58/j4eObNm8c777xDr169WLRoEUuWLClPKsqF6R3Vin9P6MvPj1/GHfHt8HV3IS33BFM3+pJuDcRS7ZkG8IuwbaWpDScsZRYRkSo00tqzw4YNY/Lkydx2223k5eWxefNmnn76ad57770Kjczmzp2Li4sL69at44033uC1117jvffeK3/9gQceYPXq1cyfP59t27Zxww03MGrUKH7//ffyMcXFxcyYMYP33nuPHTt2EBxc9eqtuXPnEhQUxLp163jwwQe59957ueGGG4iPj2fTpk1cccUV3HbbbRQXFwOQm5vL8OHD6dOnDxs2bGDZsmVkZWVx4403Vrqut7c3a9eu5Z///CcvvPAC33//PQDr168H4MMPPyQjI6P8uTRB1ZSCOXuFhre7C+/f1penux9lnGkVx5N/ZNTriUz9YpuamoiIiOM10jgQFAs6IxY0WM9Or7YA+fn5+Pv7k5eX17LqE9ZByUkz3yVn8fnGw3jt+x//dpkFgPGscjpWDLZNMqfvgNvNiUuZRUSam5KSElJSUmjfvn3dmoGlrIS5V9c87vavqy1hUVd33HEHH3/8caV5P/nkkzz55JOUlZUxaNAgunTpwvbt27n44ot55513yscNGzaM7OxsduzYgcFg+wX1xBNPsHTpUpKTk0lNTaVDhw6kpqYSHh5eft6IESMYOHAgL7/8MnPmzOHOO+9ky5Yt9OrVq8LccnNzy+u/DBs2DLPZXH4322w24+/vz3XXXcdHH30EQGZmJmFhYaxevZrBgwfzj3/8g5UrV7J8+fLy6x4+fJioqCh2795Nly5dKl0XYODAgQwfPpzp06cDtpX/ixcvrrF49vn+W1AMZNPov4cqYqR0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LkTyUliQUDEwBEINObxpfI1Dv33mpImJiIiIiD283V14dlx3AN75ZT97swvtO7GaOJD8DNvx5KUOnmn9UpJQREREpK4sZtudY6yVXjoTZIWseq7JbjkRERERaSmuiAlheLdgTpqtPL1kO1Zr5fiugvPEgeXHlj3RpOJAJQlFRERE6urgqsp3js9iNIBvaZZtnIiIiIg0WgaDgefHdcfdxcjq/cdYurX6GA+oMQ4EK+SnNak4UElCERERkboqrKED3mmWgsx6noiIiIiIXKioQC8eHN4JgBe/3kneiZPVD7YzDrR7XCOgJKGIiIhIXfmE2DXsYKlvPU9ERERERBzhr5d0oEMbb44WlvLGD79XP9DOONDucY2AkoQiIiIidRUdb+teh6HKly1AurU1iSWdGnRaIiIiIlI37i4mnj/dxOS/aw5wKKe46oE1xIFgAL8I27gmQklCERERkboymmDUjNNPzg0QDRgw8PzJ21h3MK+hZyYiIiIidTS0cxuGdg7ipNnKq9/trnpQDXEgAKOm28Y1EUoSioiIiFyImHFw40fgF1bxuF84u4b+m+WWgezOLHDO3ERERESkTqaM6gbAl1vS2Z5WzQ3f88SB3PiR7fUmxMXZExARERFp8mLGQberbN3rCrNstWei4/HPL4PvfyQ1p5iTZguuJt2fFREREWkKekT4c03vcL7cks6MZbv478RBVQ+sJg5sSisIz1CSUERERMQRjCZoP7TCoVA/D7zcTBSXmUnNKaZjGx8nTU5EREREauuxK7rybVImK38/ysrfjzC0c5uqB1YRBzZFup0tIiIiUk+MRgPtg7wB2H+kyMmzEREREZHaiAr04s+DowGY/u0uLBark2dUv5QkFBEREalHHU6vHtx3pNDJMxERERGR2npgeCd83V3YkZ7P0q3pzp5OvVKSUERERKQedShfSagk4dmmTZvGgAED8PX1JTg4mGuvvZbdu6vpHniWWbNm0bVrVzw9PYmKiuLhhx+mpKSkAWYsIiIiLVGgtxv3DOsIwKvf7ab0lNn+ky1mSFkJSYtsPy21ONcJlCQUERERqUcdg20rCbXduKKff/6Z+++/nzVr1vD9999z8uRJrrjiCoqKqv+e5s2bxxNPPMGzzz7Lzp07ef/99/nss8948sknG3DmIiIi0tLceXE7gn3dOXz8BB+vSbXvpOSlMKsHzL0a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",
      "text/plain": [
       "<Figure size 1300x400 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(13, 4))\n",
    "\n",
    "# plot the 1C results\n",
    "t_sol = solutions[0][\"Time [s]\"].entries\n",
    "ax1.plot(t_sol, solutions[0][\"Voltage [V]\"](t_sol))\n",
    "ax1.plot(voltage_data_1C[:, 0], voltage_data_1C[:, 1], \"o\")\n",
    "ax1.set_xlabel(\"Time [s]\")\n",
    "ax1.set_ylabel(\"Voltage [V]\")\n",
    "ax1.set_title(\"1C\")\n",
    "ax1.legend([\"DFN\", \"Experiment\"], loc=\"best\")\n",
    "\n",
    "# plot the 5C results\n",
    "t_sol = solutions[1][\"Time [s]\"].entries\n",
    "ax2.plot(t_sol, solutions[1][\"Voltage [V]\"](t_sol))\n",
    "ax2.plot(voltage_data_5C[:, 0], voltage_data_5C[:, 1], \"o\")\n",
    "ax2.set_xlabel(\"Time [s]\")\n",
    "ax2.set_ylabel(\"Voltage [V]\")\n",
    "ax2.set_title(\"5C\")\n",
    "ax2.legend([\"DFN\", \"Experiment\"], loc=\"best\")\n",
    "\n",
    "plt.tight_layout()\n",
    "plt.show()"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "For a 1C discharge we observe an excellent agreement between the model and experiment, both in terms of the overall shape of the curve and the capacity. The agreement between model and experiment is less good at 5C, but in line with other implementations of the DFN (e.g. [[6]](#References)). "
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## References\n",
    "\n",
    "The relevant papers for this notebook are:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[1] Weilong Ai, Ludwig Kraft, Johannes Sturm, Andreas Jossen, and Billy Wu. Electrochemical thermal-mechanical modelling of stress inhomogeneity in lithium-ion pouch cells. Journal of The Electrochemical Society, 167(1):013512, 2019. doi:10.1149/2.0122001JES.\n",
      "[2] Joel A. E. Andersson, Joris Gillis, Greg Horn, James B. Rawlings, and Moritz Diehl. CasADi – A software framework for nonlinear optimization and optimal control. Mathematical Programming Computation, 11(1):1–36, 2019. doi:10.1007/s12532-018-0139-4.\n",
      "[3] Rutooj Deshpande, Mark Verbrugge, Yang-Tse Cheng, John Wang, and Ping Liu. Battery cycle life prediction with coupled chemical degradation and fatigue mechanics. Journal of the Electrochemical Society, 159(10):A1730, 2012. doi:10.1149/2.049210jes.\n",
      "[4] Marc Doyle, Thomas F. Fuller, and John Newman. Modeling of galvanostatic charge and discharge of the lithium/polymer/insertion cell. Journal of the Electrochemical society, 140(6):1526–1533, 1993. doi:10.1149/1.2221597.\n",
      "[5] Madeleine Ecker, Stefan Käbitz, Izaro Laresgoiti, and Dirk Uwe Sauer. Parameterization of a Physico-Chemical Model of a Lithium-Ion Battery: II. Model Validation. Journal of The Electrochemical Society, 162(9):A1849–A1857, 2015. doi:10.1149/2.0541509jes.\n",
      "[6] Madeleine Ecker, Thi Kim Dung Tran, Philipp Dechent, Stefan Käbitz, Alexander Warnecke, and Dirk Uwe Sauer. Parameterization of a Physico-Chemical Model of a Lithium-Ion Battery: I. Determination of Parameters. Journal of the Electrochemical Society, 162(9):A1836–A1848, 2015. doi:10.1149/2.0551509jes.\n",
      "[7] Alastair Hales, Laura Bravo Diaz, Mohamed Waseem Marzook, Yan Zhao, Yatish Patel, and Gregory Offer. The cell cooling coefficient: a standard to define heat rejection from lithium-ion batteries. Journal of The Electrochemical Society, 166(12):A2383, 2019.\n",
      "[8] Charles R. Harris, K. Jarrod Millman, Stéfan J. van der Walt, Ralf Gommers, Pauli Virtanen, David Cournapeau, Eric Wieser, Julian Taylor, Sebastian Berg, Nathaniel J. Smith, and others. Array programming with NumPy. Nature, 585(7825):357–362, 2020. doi:10.1038/s41586-020-2649-2.\n",
      "[9] Giles Richardson, Ivan Korotkin, Rahifa Ranom, Michael Castle, and Jamie M. Foster. Generalised single particle models for high-rate operation of graded lithium-ion electrodes: systematic derivation and validation. Electrochimica Acta, 339:135862, 2020. doi:10.1016/j.electacta.2020.135862.\n",
      "[10] Valentin Sulzer, Scott G. Marquis, Robert Timms, Martin Robinson, and S. Jon Chapman. Python Battery Mathematical Modelling (PyBaMM). Journal of Open Research Software, 9(1):14, 2021. doi:10.5334/jors.309.\n",
      "[11] Yan Zhao, Yatish Patel, Teng Zhang, and Gregory J Offer. Modeling the effects of thermal gradients induced by tab and surface cooling on lithium ion cell performance. Journal of The Electrochemical Society, 165(13):A3169, 2018.\n",
      "\n"
     ]
    }
   ],
   "source": [
    "pybamm.print_citations()"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.12.3"
  },
  "toc": {
   "base_numbering": 1,
   "nav_menu": {},
   "number_sections": true,
   "sideBar": true,
   "skip_h1_title": false,
   "title_cell": "Table of Contents",
   "title_sidebar": "Contents",
   "toc_cell": false,
   "toc_position": {},
   "toc_section_display": true,
   "toc_window_display": true
  },
  "vscode": {
   "interpreter": {
    "hash": "612adcc456652826e82b485a1edaef831aa6d5abc680d008e93d513dd8724f14"
   }
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
